package com.yidu.hbatsams.service.Impl;

import com.github.pagehelper.PageHelper;
import com.yidu.hbatsams.dao.AtsDataBatchMapper;
import com.yidu.hbatsams.domain.AtsDataBatch;
import com.yidu.hbatsams.service.AtsDataBatchService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 *  数据批次实现类
 */
@Service
public class AtsDataBatchServiceImpl implements AtsDataBatchService {

    /**
     * 数据批次Dao
     */
    @Resource
    private AtsDataBatchMapper atsDataBatchMapper;

    /**
     * 根据用户ID和体育项目查询实际数据
     * @param atsDataBatch 数据批次
     * @return 实际数据集合
     */
    @Override
    public AtsDataBatch selectAtsDataCondition(AtsDataBatch atsDataBatch){
        List<AtsDataBatch> dataBatches= atsDataBatchMapper.selectAtsDataCondition(atsDataBatch);
        if(dataBatches.size()>0){
            return dataBatches.get(0);
        }else{
            return null;
        }
    }

    /**
     * 根据运动员查询批次
     * @param atsDataBatch 数据批次
     * @return 实际数据集合
     */
    @Override
    public List<AtsDataBatch> selectAtsDataComparison(AtsDataBatch atsDataBatch){

        return atsDataBatchMapper.selectAtsDataComparison(atsDataBatch);
    }

    /**
     * 查询批次总行数
     * @param batch
     * @param startDate
     * @param endDate
     * @return
     */
    @Override
    public Integer overCount(AtsDataBatch batch, String startDate, String endDate) {
        return atsDataBatchMapper.overCount(batch,startDate,endDate);
    }

    /**
     * 查询批次集合
     * @param batch
     * @param page
     * @param limit
     * @param startDate
     * @param endDate
     * @return
     */
    @Override
    public List<AtsDataBatch> selectFindAll(AtsDataBatch batch, Integer page,Integer limit,String startDate,String endDate) {
        PageHelper.startPage(page,limit);
        return atsDataBatchMapper.selectFindAll(batch,startDate,endDate);
    }

    /**
     * 删除
     * @param batchId
     * @return
     */
    @Override
    public int deleteById(Integer batchId) {
        return atsDataBatchMapper.deleteById(batchId);
    }

    /**
     * 判断是否有相同名称
     * @param athleteId
     * @param batchName
     * @return
     */
    @Override
    public Integer atsDataCompare(Integer athleteId,String batchName) {
        return atsDataBatchMapper.atsDataCompare(athleteId,batchName) ;
    }

    @Override
    public AtsDataBatch findById(Integer batchId) {
        return atsDataBatchMapper.selectByPrimaryKey(batchId);
    }
}
